#include<stdio.h>
#include<unistd.h>
#include <sys/types.h>

int main()
{

    printf("begin：我是一个进程，pid：%d, ppid：%d\n",getpid(),getppid());

    pid_t id = fork();
    
    printf("检测父进程和子进程代码共享\n");

    printf("all id = %d\n",id);
    sleep(3);
    if(id == 0)
    {
        //子进程
        printf("子进程id = %d\n",id);
        while(1)
        {
            printf("我是一个子进程，pid: %d, ppid: %d\n",getpid(),getppid());
            sleep(1);
        }
    }
    else if (id > 0)
    {
        //父进程
        printf("父进程id = %d\n",id);
        while(1)
        {
            printf("我是一个父进程，pid: %d, ppid: %d\n",getpid(),getppid());
            sleep(1);
        }
    }
    else 
    {
        //错误，error
    }

   // while(1)
   // {
   //     printf("我是一个进程,进程PID：%d   父进程：%d\n",getpid(),getppid());
   //     sleep(1);
   // }


    //int id = getpid();
    //printf("id = %d\n",id);
    //printf("我是一个进程，子进程：%d   父进程：%d\n",getpid(),getppid());

    return 0;
}

